#ifndef _BOUNDING_BOX_H_
#define _BOUNDING_BOX_H_

#include "Point3.h"
#include "Vector3.h"
#include "MathUtil.h"

class BoundingBox
{
public:
	BoundingBox(void);
	~BoundingBox(void);

	Point3* getMinimum();
	Point3* getMaximum();
	Point3* getCenter();
	Vector3* getExtents();
	void scale(double s);
	bool isEmpty();
	bool intersects(BoundingBox* b);
	bool contains(Point3* p);
	void include(Point3* p);
	void include(BoundingBox* b);


private:

	Point3*		minimum;
	Point3*		maximum;
	Point3*		center;
	Vector3*	extents;
};

#endif

